package com.sz.mes.entity;

import java.util.Date;
import java.lang.Double;
import java.math.BigDecimal;
import javax.validation.constraints.NotNull;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.hibernate.validator.constraints.Length;
import java.util.List;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.sz.mes.entity.BaseCustomEntity;
import com.diboot.core.binding.query.BindQuery;
import com.diboot.core.binding.query.Comparison;
import com.diboot.core.util.D;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
* 计划用料表 Entity定义
* @author hem
* @version 1.0
* @date 2023-06-05
* Copyright © szhs
*/
@Getter @Setter @Accessors(chain = true)
@TableName("plan_demand_quantity")
public class PlanDemandQuantity extends BaseCustomEntity {
    private static final long serialVersionUID = 321169032097488142L;

    /**
    * 商品编号 
    */
    @Length(max=100, message="商品编号长度应小于100")
    @TableField()
    private String goodsCode;

    /**
    * 商品名称 
    */
    @Length(max=100, message="商品名称长度应小于100")
    @TableField()
    private String goodsName;

    /**
    * 计量单位 
    */
    @Length(max=100, message="计量单位长度应小于100")
    @TableField()
    private String unit;

    /**
    * 规格 
    */
    @Length(max=100, message="规格长度应小于100")
    @TableField()
    private String specifications;

    /**
    * 图号 
    */
    @Length(max=100, message="图号长度应小于100")
    @TableField()
    private String figureNum;

    /**
    * 备注 
    */
    @Length(max=100, message="备注长度应小于100")
    @TableField()
    private String remark;

    /**
    * 总库存 
    */
    @TableField()
    private Long totalStock;

    /**
    * 需求数量 
    */
    @TableField()
    private Long planDemandQuantityNum;

    /**
    * 领用数量 
    */
    @TableField()
    private Long recipientsQuantity;

    /**
    * 退料数量 
    */
    @TableField()
    private Long returnQuantity;

    /**
    * planId 
    */
    @TableField()
    private Long planId;

    /**
    * 加工单表Id 
    */
    @TableField()
    private Long worksheetId;

    /**
    * 商品Id 
    */
    @TableField()
    private Long goodsId;

    /**
    * 商品总备料数 
    */
    @TableField()
    private Long totalMaterialPrepareCount;

    /**
    * 创建人 
    */
    @TableField(fill = FieldFill.INSERT)
    private Long createBy;

    /**
    * 更新人 
    */
    @TableField(fill = FieldFill.UPDATE)
    private Long updateBy;

    /**
    * 更新时间 
    */
    @TableField(fill = FieldFill.UPDATE)
    private Date updateTime;


} 
